﻿//力扣 20. 有效的括号
//思路：创建一个空数组，判断为 左半边括号 的时候先给字符变量中放入 相应的右半边括号
//再将此字符放入数组
//用放入后的数组的元素与传过来字符串相比，如果两个字符不一致就返回false
//如果比较后发现是对应的右半边括号，就给计数器-1
//最终看计数器的数字是否为 0 ，为 0 就说明是完整的，不为 0 就是 false
bool isValid(char* s)
{
    char ch[10000] = "\0", t = '\0';
    int cnt = 0;
    while (*s != '\0')
    {
        if (*s == '(' || *s == '[' || *s == '{')
        {
            if (*s == '(')
                t = ')';
            if (*s == '[')
                t = ']';
            if (*s == '{')
                t = '}';
            cnt++;
            ch[cnt] = t;
        }
        else
        {
            if (ch[cnt] != *s)
                return false;
            else
                cnt--;
        }
        s++;
    }
    if (0 == cnt)
        return true;
    else
        return false;
}